package com.ruoyi.system.api.factory;

import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.system.api.RemoteManagerService;
import com.ruoyi.system.api.domain.*;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;

import java.util.List;

/**
 * 类名：
 * 作者：WF
 * 功能：
 */
@Component
public class RemoteManagerFallbackFactory implements FallbackFactory<RemoteManagerService> {
	@Override
	public RemoteManagerService create(Throwable e) {
		return new RemoteManagerService() {
			@Override
			public R<List<Content>> findById(Long id) {
				return R.fail("根据广告分类id查询广告列表失败,原因是:" + e.getMessage());
			}

			@Override
			public R<Content> findContentById(Long id) {
				return R.fail("根据广告id查询广告失败,原因是:" + e.getMessage());
			}

			@Override
			public R insert(Content content) {
				return R.fail("添加广告失败,原因是:" + e.getMessage());
			}

			@Override
			public R<List<Item>> findItems() {
				return R.fail("查询sku商品失败,原因是:" + e.getMessage());
			}

			@Override
			public R<Goods> findGoodsById(Long id) {
				return R.fail("根据spuid查询spu商品失败,原因是:" + e.getMessage());
			}

			@Override
			public R<GoodsDesc> findDescById(Long goodsId) {
				return R.fail("根据spuid查询spu商品描述信息失败,原因是:" + e.getMessage());
			}

			@Override
			public R<String> findNameById(Long id) {
				return R.fail("根据分类id查询分类名字信息失败,原因是:" + e.getMessage());
			}

			@Override
			public R<List<Item>> findItemsByGoodsId(Long id) {
				return R.fail("根据spuid查询sku商品列表失败,原因是:" + e.getMessage());
			}

			@Override
			public R<List<Brand>> findAllBrands() {
				return R.fail("查询品牌列表失败,原因是:" + e.getMessage());
			}

			@Override
			public R<Item> findItemById(Long id) {
				return R.fail("根据sku商品id查询sku商品失败,原因是:" + e.getMessage());
			}

			@Override
			public R addBrand() {
				return R.fail("添加品牌失败,原因是:" + e.getMessage());
			}
		};
	}
}
